// pages/login/login.js
// 获得app
const app = getApp()
const FormData=require("../../utils/wx-formdata/formData.js")
import {address} from "../../request/api.js"
Page({

    /**
     * 页面的初始数据
     */
    data: {
        userInfo: null, // 用户信息
        userImage: "../../images/userLogin.png",
        isBind: true,
        bindUserInfo: {},
    },
    // 用户退出登录
    logout() {
        //   数据清空
        app.globalData.userInfo = null
        wx.removeStorageSync('userInfo')
        this.setData({
            userInfo: null,
            isBind: true,
            bindUserInfo: {}
        })
    },
    // 进入蓝牙操作界面
    GoControBlue() {
        // 判断是否登录
        if (this.data.userInfo) {
            // 跳转至搜索蓝牙界面
            wx.navigateTo({
                url: '../search/search',
            })
        }
    },
    //跳转至用户绑定页
    GoUserSet() {
        wx.navigateTo({
            url: '../UserSet/UserSet',
        })
    },
    //   取消用户绑定
    async CancelBind() {
        var that = this
        let formdata=new FormData()
        formdata.append("wxid",that.data.userInfo._id)
        formdata.append("uid",that.data.bindUserInfo.id)
        let data=formdata.getData()
        //   清空数据
        await wx.request({
            url: `http://${address}/wxuser/wxuser`,
            method: "DELETE",
            data:data.buffer,
            header: {
                'content-type':data.contentType
              },
            success({data:res}) {
                console.log(res);
                if (res.status == 200) {
                    that.setData({
                        bindUserInfo: {},
                        isBind: true
                    })
                }
            }
        })

    },
    // 用户登录
    userlogin() {
        wx.getUserProfile({
            desc: '获取用户信息',
            success: res => {
                console.log(res.userInfo);
                // 全局存储用户信息
                app.globalData.userInfo = res.userInfo
                var user = res.userInfo
                // 局部存储用户信息
                this.setData({
                    userInfo: user,
                })
                console.log(this.data.userInfo);
                // 检查是否有重复用户
                wx.cloud.database().collection('userInfo').where({
                    _openid: app.globalData.user_openId
                }).get({
                    success: res => {
                        // 如果没有重复用户
                        if (!res.data[0]) {
                            // 将用户信息存储至数据库
                            wx.cloud.database().collection('userInfo').add({
                                data: {
                                    avatarUrl: user.avatarUrl,
                                    nickName: user.nickName
                                },
                                success: res => {
                                    console.log(res);
                                }
                            })
                        } else {
                            // 已经添加过了
                            this.setData({
                                userInfo: res.data[0]
                            })
                        }
                    }
                })
            }
        })
    },
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {

    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {
        var that = this
        let userInfo = wx.getStorageSync('userInfo')
        console.log("本地获取用户信息", userInfo);
        that.setData({
            userInfo: userInfo
        })
        console.log("用户id", that.data.userInfo);
        this.getBindUserInfo()
    },
    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },
    async getBindUserInfo() {
        var that = this
        console.log(app.globalData.bindUserInfo);
        if(app.globalData.bindUserInfo==null){
            await wx.request({
                url: `${address}/wxuser/wxuser`,
                method: "GET",
                data: {
                    'wxid': this.data.userInfo._id
                },
                success({
                    data: res
                }) {
                    console.log(res);
                    if (res.status == 200) {
                        that.setData({
                            isBind: false,
                            bindUserInfo: res.data
                        })
                        app.globalData.bindUserInfo=res.data
                    } else {
                        that.setData({
                            isBind: true,
                            bindUserInfo: {}
                        })
                    }
                }
            })
        }else{
            this.setData({
                isBind:false,
                bindUserInfo:app.globalData.bindUserInfo
            })
        }

    },
    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})